// 1.导入 fs模块
const fs = require('fs')
// 2.异步写入
console.log('异步写入开始')
// 接收4个参数
// 1.文件路径和文件名
// 2.要写入的数据
// 3.可选参数 可传入一个对象
// encoding  默认值'utf8'不用管
// mode：模式，默认值: 0o666(十六进制权限，表示可读写)不用管
// flag 文件操作标识符 默认值: 'w'
// 4.回调函数
// fs.writeFile('./b.txt', "大家好，我是张世舰",{
//   flag: "a"
// },error => {
//   if (error) {  // 写入失败
//     throw error // 异常退出
//   }
//   // 3.写入成功之后,进行同步读取内容
//   let data = fs.readFileSync('./b.txt', 'utf8')
//   console.log(`读取到的内容: ${data}`)
// })
// console.log("异步写入结束")

// 可以通过绝对路径，写入到桌面文件夹里面
// fs.writeFile('C:/Users/tclcm/Desktop/a.txt', "大家好，我是张世舰",{
//   flag: "a"
// },error => {
//   if (error) {  // 写入失败
//     throw error // 异常退出
//   }
//   // 3.写入成功之后,进行同步读取内容
//   let data = fs.readFileSync('C:/Users/tclcm/Desktop/a.txt', 'utf8')
//   console.log(`读取到的内容: ${data}`)
// })
// console.log("异步写入结束")


// 写入json文件，需要先将json对象序列化为json字符串
// 2.将对象通过JSON对象序列化成字符串
let writeContent = JSON.stringify({
  name: "Tom",
  age: 18
});
fs.writeFile('C:/Users/tclcm/Desktop/a.json', writeContent,{
  flag: "a"
},error => {
  if (error) {  // 写入失败
    throw error // 异常退出
  }
  // 3.写入成功之后,进行同步读取内容
  let data = fs.readFileSync('C:/Users/tclcm/Desktop/a.json', 'utf8')
  console.log(`读取到的内容: ${data}`)
})
console.log("异步写入结束")

